const local: App.I18n.Schema = {
  system: {
    title: 'reecho admin',
    updateTitle: 'System Version Update Notification',
    updateContent:
      'A new version of the system has been detected. Do you want to refresh the page immediately?',
    updateConfirm: 'Refresh immediately',
    updateCancel: 'Later',
  },
  common: {
    none: 'None',
    details: 'Details',
    action: 'Action',
    add: 'Add',
    addSuccess: 'Add Success',
    backToHome: 'Back to home',
    batchDelete: 'Batch Delete',
    cancel: 'Cancel',
    close: 'Close',
    check: 'Check',
    expandColumn: 'Expand Column',
    columnSetting: 'Column Setting',
    config: 'Config',
    confirm: 'Confirm',
    delete: 'Delete',
    deleteSuccess: 'Delete Success',
    deleteFailed: 'Delete Failed',
    examineFailed: 'Examine Failed',
    examineSuccess: 'Examine Success',
    confirmDelete: 'Are you sure you want to delete?',
    confirmExamine: 'Are you sure you want to examine？',
    examine: 'examine',
    edit: 'Edit',
    warning: 'Warning',
    error: 'Error',
    index: 'Index',
    keywordSearch: 'Please enter keyword',
    logout: 'Logout',
    logoutConfirm: 'Are you sure you want to log out?',
    lookForward: 'Coming soon',
    modify: 'Modify',
    modifySuccess: 'Modify Success',
    noData: 'No Data',
    operate: 'Operate',
    pleaseCheckValue: 'Please check whether the value is valid',
    refresh: 'Refresh',
    reset: 'Reset',
    search: 'Search',
    switch: 'Switch',
    tip: 'Tip',
    trigger: 'Trigger',
    update: 'Update',
    updateSuccess: 'Update Success',
    updateFailed: 'Update Failed',
    userCenter: 'User Center',
    day: 'Day',
    week: 'Week',
    month: 'Month',
    yesOrNo: {
      yes: 'Yes',
      no: 'No',
    },
  },
  request: {
    logout: 'Logout user after request failed',
    logoutMsg: 'User status is invalid, please log in again',
    logoutWithModal: 'Pop up modal after request failed and then log out user',
    logoutWithModalMsg: 'User status is invalid, please log in again',
    refreshToken: 'The requested token has expired, refresh the token',
    tokenExpired: 'The requested token has expired',
    logoutPowerMsg:
      'You do not have permission to log in, please log in with an administrator account',
    request: 'Request',
  },
  theme: {
    themeSchema: {
      title: 'Theme Schema',
      light: 'Light',
      dark: 'Dark',
      auto: 'Follow System',
    },
    grayscale: 'Grayscale',
    colourWeakness: 'Colour Weakness',
    layoutMode: {
      title: 'Layout Mode',
      vertical: 'Vertical Menu Mode',
      horizontal: 'Horizontal Menu Mode',
      'vertical-mix': 'Vertical Mix Menu Mode',
      'horizontal-mix': 'Horizontal Mix menu Mode',
      reverseHorizontalMix:
        'Reverse first level menus and child level menus position',
    },
    recommendColor: 'Apply Recommended Color Algorithm',
    recommendColorDesc: 'The recommended color algorithm refers to',
    themeColor: {
      title: 'Theme Color',
      primary: 'Primary',
      info: 'Info',
      success: 'Success',
      warning: 'Warning',
      error: 'Error',
      followPrimary: 'Follow Primary',
    },
    scrollMode: {
      title: 'Scroll Mode',
      wrapper: 'Wrapper',
      content: 'Content',
    },
    page: {
      animate: 'Page Animate',
      mode: {
        title: 'Page Animate Mode',
        fade: 'Fade',
        'fade-slide': 'Slide',
        'fade-bottom': 'Fade Zoom',
        'fade-scale': 'Fade Scale',
        'zoom-fade': 'Zoom Fade',
        'zoom-out': 'Zoom Out',
        none: 'None',
      },
    },
    fixedHeaderAndTab: 'Fixed Header And Tab',
    header: {
      height: 'Header Height',
      breadcrumb: {
        visible: 'Breadcrumb Visible',
        showIcon: 'Breadcrumb Icon Visible',
      },
    },
    tab: {
      visible: 'Tab Visible',
      cache: 'Tab Cache',
      height: 'Tab Height',
      mode: {
        title: 'Tab Mode',
        chrome: 'Chrome',
        button: 'Button',
      },
    },
    sider: {
      inverted: 'Dark Sider',
      width: 'Sider Width',
      collapsedWidth: 'Sider Collapsed Width',
      mixWidth: 'Mix Sider Width',
      mixCollapsedWidth: 'Mix Sider Collapse Width',
      mixChildMenuWidth: 'Mix Child Menu Width',
    },
    footer: {
      visible: 'Footer Visible',
      fixed: 'Fixed Footer',
      height: 'Footer Height',
      right: 'Right Footer',
    },
    watermark: {
      visible: 'Watermark Full Screen Visible',
      text: 'Watermark Text',
    },
    themeDrawerTitle: 'Theme Configuration',
    pageFunTitle: 'Page Function',
    configOperation: {
      copyConfig: 'Copy Config',
      copySuccessMsg:
        'Copy Success, Please replace the variable "themeSettings" in "src/theme/settings.ts"',
      resetConfig: 'Reset Config',
      resetSuccessMsg: 'Reset Success',
    },
  },
  route: {
    login: 'Login',
    403: 'No Permission',
    404: 'Page Not Found',
    500: 'Server Error',
    home: 'Home',
    document: 'Document',
    document_project: 'Project Document',
    'document_project-link': 'Project Document(External Link)',
    document_vue: 'Vue Document',
    document_vite: 'Vite Document',
    document_unocss: 'UnoCSS Document',
    document_naive: 'Naive UI Document',
    document_antd: 'Ant Design Vue Document',
    'user-center': 'User Center',
    exception: 'Exception',
    exception_403: '403',
    exception_404: '404',
    exception_500: '500',
    'user-data': 'User Data',
    'user-data_user-list': 'User List',
    'user-data_user-generate': 'User Generate',
    'user-data_user-voice': 'User Voice',
    'user-data_user-sound-effect': 'User Sound Effect',
    'market-data': 'Market Data',
    'market-data_market-voice': 'Market Voice',
    'market-data_market-new-voice': 'Market New Voice',
    'system-control': 'System Control',
    'system-control_operation-api': 'Operation API',
    'system-setup': 'System Setup',
    'system-setup_setup-site': 'Setup Site',
  },
  page: {
    login: {
      common: {
        loginOrRegister: 'Login / Register',
        userNamePlaceholder: 'Please enter user name',
        phonePlaceholder: 'Please enter phone number',
        codePlaceholder: 'Please enter verification code',
        passwordPlaceholder: 'Please enter password',
        confirmPasswordPlaceholder: 'Please enter password again',
        codeLogin: 'Verification code login',
        confirm: 'Confirm',
        back: 'Back',
        validateSuccess: 'Verification passed',
        loginSuccess: 'Login successfully',
        welcomeBack: 'Welcome back, {userName} !',
      },
      pwdLogin: {
        title: 'Password Login',
        rememberMe: 'Remember me',
        forgetPassword: 'Forget password?',
        register: 'Register',
        otherAccountLogin: 'Other Account Login',
        otherLoginMode: 'Other Login Mode',
        superAdmin: 'Super Admin',
        admin: 'Admin',
        user: 'User',
      },
      codeLogin: {
        title: 'Verification Code Login',
        getCode: 'Get verification code',
        reGetCode: 'Reacquire after {time}s',
        sendCodeSuccess: 'Verification code sent successfully',
        imageCodePlaceholder: 'Please enter image verification code',
      },
      register: {
        title: 'Register',
        agreement: 'I have read and agree to',
        protocol: '《User Agreement》',
        policy: '《Privacy Policy》',
      },
      resetPwd: {
        title: 'Reset Password',
      },
      bindWeChat: {
        title: 'Bind WeChat',
      },
    },
    about: {
      title: 'About',
      introduction: `HsAdmin is an elegant and powerful admin template, based on the latest front-end technology stack, including Vue3, Vite5, TypeScript, Pinia and UnoCSS. It has built-in rich theme configuration and components, strict code specifications, and an automated file routing system. In addition, it also uses the online mock data solution based on ApiFox. HsAdmin provides you with a one-stop admin solution, no additional configuration, and out of the box. It is also a best practice for learning cutting-edge technologies quickly.`,
      projectInfo: {
        title: 'Project Info',
        version: 'Version',
        latestBuildTime: 'Latest Build Time',
        githubLink: 'Github Link',
        previewLink: 'Preview Link',
      },
      prdDep: 'Production Dependency',
      devDep: 'Development Dependency',
    },
    home: {
      branchDesc:
        'For the convenience of everyone in developing and updating the merge, we have streamlined the code of the main branch, only retaining the homepage menu, and the rest of the content has been moved to the example branch for maintenance. The preview address displays the content of the example branch.',
      greeting:
        'Good morning, {userName}, today is another day full of vitality!',
      weatherDesc: 'Today is cloudy to clear, 20℃ - 25℃!',
      projectCount: 'Project Count',
      todo: 'Todo',
      message: 'Message',
      downloadCount: 'Download Count',
      registerCount: 'User Register Count',
      schedule: 'Work and rest Schedule',
      study: 'Study',
      work: 'Work',
      rest: 'Rest',
      entertainment: 'Entertainment',
      visitCount: 'Visit Count',
      turnover: 'Turnover',
      dealCount: 'Deal Count',
      projectNews: {
        title: 'Project News',
        moreNews: 'More News',
        desc1:
          'Soybean created the open source project soybean-admin on May 28, 2021!',
        desc2:
          'Yanbowe submitted a bug to soybean-admin, the multi-tab bar will not adapt.',
        desc3:
          'Soybean is ready to do sufficient preparation for the release of soybean-admin!',
        desc4:
          'Soybean is busy writing project documentation for soybean-admin!',
        desc5:
          'Soybean just wrote some of the workbench pages casually, and it was enough to see!',
      },
      creativity: 'Creativity',
      userTotal: 'User Total',
      generateTotal: 'Generate Total',
      marketVoiceTotal: 'Market Voice Total',
      soundEffectTotal: 'Sound Effect Total',
      voiceLoraTotal: 'Voice Lora Total',
      voiceNoLoraTotal: 'Voice No Lora Total',
      voiceAll: 'Voice All',
    },
    function: {
      tab: {
        tabOperate: {
          title: 'Tab Operation',
          addTab: 'Add Tab',
          addTabDesc: 'To about page',
          closeTab: 'Close Tab',
          closeCurrentTab: 'Close Current Tab',
          closeAboutTab: 'Close "About" Tab',
          addMultiTab: 'Add Multi Tab',
          addMultiTabDesc1: 'To MultiTab page',
          addMultiTabDesc2: 'To MultiTab page(with query params)',
        },
        tabTitle: {
          title: 'Tab Title',
          changeTitle: 'Change Title',
          change: 'Change',
          resetTitle: 'Reset Title',
          reset: 'Reset',
        },
      },
      multiTab: {
        routeParam: 'Route Param',
        backTab: 'Back function_tab',
      },
      toggleAuth: {
        toggleAccount: 'Toggle Account',
        authHook: 'Auth Hook Function `hasAuth`',
        superAdminVisible: 'Super Admin Visible',
        adminVisible: 'Admin Visible',
        adminOrUserVisible: 'Admin and User Visible',
      },
      request: {
        repeatedErrorOccurOnce: 'Repeated Request Error Occurs Once',
        repeatedError: 'Repeated Request Error',
        repeatedErrorMsg1: 'Custom Request Error 1',
        repeatedErrorMsg2: 'Custom Request Error 2',
      },
    },
    manage: {
      common: {
        status: {
          enable: 'Enable',
          disable: 'Disable',
        },
      },
      role: {
        title: 'Role List',
        roleName: 'Role Name',
        roleCode: 'Role Code',
        roleStatus: 'Role Status',
        roleDesc: 'Role Description',
        menuAuth: 'Menu Auth',
        detailsRole: 'Details Role',
        buttonAuth: 'Button Auth',
        form: {
          roleName: 'Please enter role name',
          roleCode: 'Please enter role code',
          roleStatus: 'Please select role status',
          roleDesc: 'Please enter role description',
        },
        addRole: 'Add Role',
        editRole: 'Edit Role',
      },
      user: {
        title: 'User List',
        userName: 'User Name',
        userGender: 'Gender',
        nickName: 'Nick Name',
        age: 'Age',
        text: 'tell',
        orderId: 'Order ID',
        address: 'Address',
        userPhone: 'Phone Number',
        userEmail: 'Email',
        userStatus: 'User Status',
        userRole: 'User Role',
        form: {
          userName: 'Please enter user name',
          userGender: 'Please select gender',
          nickName: 'Please enter nick name',
          userPhone: 'Please enter phone number',
          userEmail: 'Please enter email',
          userStatus: 'Please select user status',
          userRole: 'Please select user role',
        },
        addUser: 'Add User',
        editUser: 'Edit User',
        gender: {
          male: 'Male',
          female: 'Female',
        },
      },
      menu: {
        home: 'Home',
        title: 'Menu List',
        id: 'ID',
        parentId: 'Parent ID',
        menuType: 'Menu Type',
        menuName: 'Menu Name',
        routeName: 'Route Name',
        routePath: 'Route Path',
        pathParam: 'Path Param',
        layout: 'Layout Component',
        page: 'Page Component',
        i18nKey: 'I18n Key',
        icon: 'Icon',
        localIcon: 'Local Icon',
        iconTypeTitle: 'Icon Type',
        order: 'Order',
        constant: 'Constant',
        keepAlive: 'Keep Alive',
        href: 'Href',
        hideInMenu: 'Hide In Menu',
        activeMenu: 'Active Menu',
        multiTab: 'Multi Tab',
        fixedIndexInTab: 'Fixed Index In Tab',
        query: 'Query Params',
        button: 'Button',
        buttonCode: 'Button Code',
        buttonDesc: 'Button Desc',
        menuStatus: 'Menu Status',
        form: {
          home: 'Please select home',
          menuType: 'Please select menu type',
          menuName: 'Please enter menu name',
          routeName: 'Please enter route name',
          routePath: 'Please enter route path',
          pathParam: 'Please enter path param',
          page: 'Please select page component',
          layout: 'Please select layout component',
          i18nKey: 'Please enter i18n key',
          icon: 'Please enter iconify name',
          localIcon: 'Please enter local icon name',
          order: 'Please enter order',
          keepAlive: 'Please select whether to cache route',
          href: 'Please enter href',
          hideInMenu: 'Please select whether to hide menu',
          activeMenu: 'Please select route name of the highlighted menu',
          multiTab: 'Please select whether to support multiple tabs',
          fixedInTab: 'Please select whether to fix in the tab',
          fixedIndexInTab: 'Please enter the index fixed in the tab',
          queryKey: 'Please enter route parameter Key',
          queryValue: 'Please enter route parameter Value',
          button: 'Please select whether it is a button',
          buttonCode: 'Please enter button code',
          buttonDesc: 'Please enter button description',
          menuStatus: 'Please select menu status',
        },
        addMenu: 'Add Menu',
        editMenu: 'Edit Menu',
        detailsMenu: 'Details Menu',
        addChildMenu: 'Add Child Menu',
        type: {
          directory: 'Directory',
          menu: 'Menu',
        },
        iconType: {
          iconify: 'Iconify Icon',
          local: 'Local Icon',
        },
      },
    },
    common: {
      role: {
        admin: 'admin',
        user: 'user',
        superAdmin: 'superAdmin',
        enterprise: 'enterprise',
      },
      generateStatus: {
        pending: 'pending',
        processing: 'processing',
        generated: 'generated',
        failed: 'failed',
        'lora-awaiting': 'lora-awaiting',
        'lora-pending': 'lora-pending',
        'lora-failed': 'lora-failed',
        'lora-success': 'lora-success',
      },
      fromStatus: {
        upload: 'upload',
        community: 'community',
        market: 'market',
        library: 'library',
      },
      operationStatus: {
        add: 'add',
        update: 'update',
        delete: 'delete',
        select: 'select',
        login: 'login',
      },
      marketStatus: {
        published: 'published',
        pending: 'pending',
        rejected: 'rejected',
      },
      yesOrNo: {
        yes: 'yes',
        no: 'no',
      },
    },
    // 用户数据
    userData: {
      userList: {
        userId: 'userId',
        id: 'id',
        edit: 'edit',
        title: 'User List',
        avatar: 'Avatar',
        email: 'Email',
        credit: 'Credit',
        frozenCredit: 'Frozen Credit',
        likes: 'Likes',
        loraQuota: 'Lora Quota',
        name: 'Name',
        phone: 'Phone',
        role: 'Role',
        voiceText: 'Voice',
        updateRemarks: 'Update Remarks',
        options: {
          title: 'Options',
        },
        createdAt: 'Created At',
        updatedAt: 'Updated At',
        deletedAt: 'Deleted At',
      },
      userListForm: {
        userId: 'Please enter the user ID',
        id: 'Please enter the ID',
        email: 'Please enter the email',
        name: 'Please enter the name',
        phone: 'Please enter the phone',
        role: 'Please select the role',
        credit: 'Please enter the credit',
        frozenCredit: 'Please enter the frozen credit',
        likes: 'Please enter the likes',
        loraQuota: 'Please enter the lora quota',
        generateId: 'Please enter the generate ID',
        voiceId: 'Please enter the voice ID',
        soundEffectId: 'Please enter the sound effect ID',
        marketVoiceId: 'Please enter the market voice ID',
        updateRemarks: 'Please enter the update remarks',
      },
      userGenerate: {
        id: 'Generate ID',
        details: 'Details',
        add: 'Add',
        title: 'User Generate',
        edit: 'Edit',
        type: 'Type',
        status: 'Status',
        metadata: {
          title: 'Metadata',
        },
      },
      userVoice: {
        id: 'Voice ID',
        add: 'Add',
        edit: 'Edit',
        title: 'User Voice',
        details: 'Details',
        status: 'Status',
        name: 'Name',
        from: 'From',
        version: 'Version',
        isLora: 'Is Lora',
        metadata: {
          title: 'Metadata',
        },
      },
      userSoundEffect: {
        id: 'Sound Effect ID',
        title: 'User Sound Effect',
        details: 'Details',
        metadata: {
          title: 'Metadata',
        },
      },
    },
    systemControl: {
      operationApi: {
        method: 'Method',
        url: 'URL',
        add: 'Add',
        edit: 'Edit',
        title: 'Operation API',
        details: 'Details',
        name: 'Name',
        any: 'Any',
        description: 'Description',
        operateUser: 'Operate User',
        operateUserPhone: 'Operate User Phone',
        operateUserId: 'Operate User ID',
        operateId: 'Operate ID',
      },
    },
    // 系统设置
    systemSetup: {
      setupSite: {
        tags: {
          title: 'Recommended tags (separated by commas in English)',
          placeholder:
            'Please enter Tags (comma separated multiple in English)',
        },
        banner: {
          title: 'Homepage Banners ([Image URL], [Link URL], one per line)',
          placeholder:
            'Please enter the homepage banner ([image URL], [link URL] one per line)',
        },
      },
    },
    // 市场数据
    marketData: {
      marketVoice: {
        id: 'marketVoice ID',
        title: 'Market Voice',
        clicks: 'Clicks quantity',
        likes: 'Likes quantity',
        generated: 'Generated quantity',
        type: 'cource',
        used: 'Used quantity',
        views: 'Views quantity',
        status: 'Status',
        rejectedReason: 'Rejected Reason',
        tags: 'Tags',
        details: 'Details',
        form: {
          status: 'Please select status',
          reason: 'Please enter reason',
        },
      },
      marketNewVoice: {
        title: 'Market New Voice',
        details: 'Market New Voice Details',
        userId: 'User ID',
        userName: 'User Name',
        status: 'Status',
        marketVoiceId: 'Market Voice ID',
        marketNewVoiceId: 'Market New Voice ID',
      },
    },
  },
  form: {
    required: 'Cannot be empty',
    userName: {
      required: 'Please enter user name',
      invalid: 'User name format is incorrect',
    },
    phone: {
      required: 'Please enter phone number',
      invalid: 'Phone number format is incorrect',
    },
    pwd: {
      required: 'Please enter password',
      invalid: '6-18 characters, including letters, numbers, and underscores',
    },
    confirmPwd: {
      required: 'Please enter password again',
      invalid: 'The two passwords are inconsistent',
    },
    code: {
      required: 'Please enter verification code',
      invalid: 'Verification code format is incorrect',
    },
    email: {
      required: 'Please enter email',
      invalid: 'Email format is incorrect',
    },
  },
  dropdown: {
    closeCurrent: 'Close Current',
    closeOther: 'Close Other',
    closeLeft: 'Close Left',
    closeRight: 'Close Right',
    closeAll: 'Close All',
  },
  icon: {
    themeConfig: 'Theme Configuration',
    themeSchema: 'Theme Schema',
    lang: 'Switch Language',
    fullscreen: 'Fullscreen',
    fullscreenExit: 'Exit Fullscreen',
    reload: 'Reload Page',
    collapse: 'Collapse Menu',
    expand: 'Expand Menu',
    pin: 'Pin',
    unpin: 'Unpin',
  },
  datatable: {
    itemCount: 'Total {total} items',
  },
};

export default local;
